package com.woniuxy.core.service;

import com.woniuxy.entity.DTO.ShopOrderDTO;
import com.woniuxy.entity.ShopOrder;
import com.woniuxy.enums.order.ShopOrderStatus;
import com.woniuxy.util.PageResult;
import com.woniuxy.util.ResponseData;

import java.util.List;

/**
 * @Author hq
 * @Date 2025/7/14$ 12:05$
 * @Description TODO
 * @Params $
 * @Return $
 **/
public interface ShopOrderService {
    /**
     * 创建订单
     * @param shopOrder
     */
    ShopOrder createShopOrder(ShopOrder shopOrder);
    /**
     * 查询订单
     * @param shopOrder
     */
    PageResult queryShopOrder(Integer pageNum, Integer pageSize,ShopOrder shopOrder);
    /**
     * 根据id查询订单
     * @param orderId
     */
    ShopOrderDTO getByOrderById(Integer orderId);
    /**
     * 关闭订单
     * @param orderNumber
     */
    void closeOrder(String  orderNumber);

    /**
     * 更新订单状态
     * @param orderId
     * @param status
     */
    void updateOrderStatus(Integer orderId, Integer status);

    /**
     * 根据订单编号查询订单
     * @param orderNumber
     */
    ShopOrder getByOrderByNumber(String orderNumber);
    //提交评价根据shopOrder表里的id
    void addComment(Integer orderId,String commentInfo);
    //确认收货
    void confirmOrder(Integer orderId);
}
